package main

//数组是一系列的同一类型的数据的集合
//数组的每个数据被称为元素，可以是任意原始类型；元素的个数是数组的长度
//golang 中 数组是一个长度固定的数据类型，数组的长度也是其类型的一部分。[5]int  不同于[6]int
import "fmt"

// 赋值
func main() {
	var a [5]int
	var b [2]int
	b[0] = 1
	b[1] = 3
	fmt.Println(a, "\n", b)

	var c = [1]string{"kiki"}
	fmt.Println(c)
	//数组在进行数据传递的时候属于值传递
	var arr = [3]int{1, 2, 3}
	arr2 := arr
	arr2[0] = 0
	fmt.Println(arr, arr2)
	// 另一种是引用传递，会修改原始值

	//	数组的遍历
	//[...]不限长度的数组，在定义好值之后，长度固定
	var arr3 = [...]string{"北京", "shanghai"}
	//第一种遍历
	for i := 0; i < len(arr3); i++ {
		fmt.Println(arr3[i])
	}
	//第二种遍历
	for index, value := range arr3 {
		fmt.Println(index, value)
	}
}
